﻿using System;

namespace UnityEngine.PostProcessing
{
	// Token: 0x0200010E RID: 270
	[Serializable]
	public class VignetteModel : PostProcessingModel
	{
		// Token: 0x170000AB RID: 171
		// (get) Token: 0x06000647 RID: 1607 RVA: 0x0002585C File Offset: 0x00023A5C
		// (set) Token: 0x06000648 RID: 1608 RVA: 0x00025864 File Offset: 0x00023A64
		public VignetteModel.Settings settings
		{
			get
			{
				return this.m_Settings;
			}
			set
			{
				this.m_Settings = value;
			}
		}

		// Token: 0x06000649 RID: 1609 RVA: 0x00025870 File Offset: 0x00023A70
		public override void Reset()
		{
			this.m_Settings = VignetteModel.Settings.defaultSettings;
		}

		// Token: 0x0400060B RID: 1547
		[SerializeField]
		private VignetteModel.Settings m_Settings = VignetteModel.Settings.defaultSettings;

		// Token: 0x0200010F RID: 271
		public enum Mode
		{
			// Token: 0x0400060D RID: 1549
			Classic,
			// Token: 0x0400060E RID: 1550
			Round,
			// Token: 0x0400060F RID: 1551
			Masked
		}

		// Token: 0x02000110 RID: 272
		[Serializable]
		public struct Settings
		{
			// Token: 0x170000AC RID: 172
			// (get) Token: 0x0600064A RID: 1610 RVA: 0x00025880 File Offset: 0x00023A80
			public static VignetteModel.Settings defaultSettings
			{
				get
				{
					return new VignetteModel.Settings
					{
						mode = VignetteModel.Mode.Classic,
						color = new Color(0f, 0f, 0f, 1f),
						center = new Vector2(0.5f, 0.5f),
						intensity = 0.45f,
						smoothness = 0.2f,
						roundness = 1f,
						mask = null,
						opacity = 1f
					};
				}
			}

			// Token: 0x04000610 RID: 1552
			[Tooltip("Use the \"Classic\" mode for parametric controls. Use \"Round\" to get a perfectly round vignette no matter what the aspect ratio is. Use the \"Masked\" mode to use your own texture mask.")]
			public VignetteModel.Mode mode;

			// Token: 0x04000611 RID: 1553
			[ColorUsage(false)]
			[Tooltip("Vignette color. Use the alpha channel for transparency.")]
			public Color color;

			// Token: 0x04000612 RID: 1554
			[Tooltip("Sets the vignette center point (screen center is [0.5,0.5]).")]
			public Vector2 center;

			// Token: 0x04000613 RID: 1555
			[Tooltip("Amount of vignetting on screen.")]
			[Range(0f, 1f)]
			public float intensity;

			// Token: 0x04000614 RID: 1556
			[Tooltip("Smoothness of the vignette borders.")]
			[Range(0.01f, 1f)]
			public float smoothness;

			// Token: 0x04000615 RID: 1557
			[Range(0f, 1f)]
			[Tooltip("Lower values will make a square-ish vignette.")]
			public float roundness;

			// Token: 0x04000616 RID: 1558
			[Tooltip("A black and white mask to use as a vignette.")]
			public Texture mask;

			// Token: 0x04000617 RID: 1559
			[Range(0f, 1f)]
			[Tooltip("Mask opacity.")]
			public float opacity;
		}
	}
}
